type I18N = {
	[key : number] : string;
};

const I18N_KEYS = {
	UNKNOW : 0,
	HIDDEN_NAME : 0,
	MENU_SINGLE : 0,
	MENU_CONENCT : 0,
	MENU_DECK : 0,
	MENU_SETTING : 0,
	MENU_EXIT : 0,
	START_TITLE : 0,
	START_MESSAGE : 0,
	DIALOG_CONFIRM : 0,
	DIALOG_CANCEL : 0,
	DECK_MAIN : 0,
	DECK_EXTRA : 0,
	DECK_SIDE : 0,
	DECK_NEW : 0,
	DECK_FROM_URL : 0,
	DECK_FROM_CODE : 0,
	DECK_NAME : 0,
	DECK_INFO : 0,
	DECK_EXIT : 0,
	CARD_REMOVE : 0,
	CARD_SEARCH_NAME : 0,
	CARD_SEARCH_LINK : 0,
	CARD_SEARCH_TYPE : 0,
	CARD_SEARCH_CATEGORY : 0,
	CARD_SEARCH_RACE : 0,
	CARD_SEARCH_OT : 0,
	CARD_SEARCH_ATTRIBUTE : 0,
	CARD_SEARCH_ATK : 0,
	CARD_SEARCH_DEF : 0,
	CARD_SEARCH_LV : 0,
	CARD_SEARCH_SCALE : 0,
	CARD_SEARCH_LFLIST : 0,
	CARD_SEARCH_FORBIDDEN : 0,
	DECK_LFLIST_FORBIDDEN : 0,
	DECK_LFLIST_LIMIT : 0,
	DECK_LFLIST_SEMI_LIMIT : 0,
	DECK_LFLIST_UNLIMIT : 0,
	DECK_DELETE_TITLE : 0,
	DECK_DELETE_MESSAGR : 0,
	DECK_RULE_NAME_EXIST : 0,
	DECK_RULE_NAME_UNLAWFUL : 0,
	DECK_RULE_NAME_LEN : 0,
	DECK_RULE_SEARCH_INFO : 0,
	DECK_RULE_SEARCH_ATK : 0,
	DECK_RULE_SEARCH_LV : 0,
	DECK_RULE_DECK_MAX : 0,
	DECK_RULE_CARD_MAX : 0,
	DECK_RULE_CARD_LESS : 0,
	DECK_SAVE_COMPELETE : 0,
	DECK_DELETE_COMPELETE : 0,
	DECK_COPY_COMPELETE : 0,
	DECK_FROM_URL_ERROR : 0,
	DECK_FROM_CODE_ERROR : 0,

	SERVER_ADDRESS : 0,
	SERVER_NAME : 0,
	SERVER_PASSWORD : 0,
	SERVER_NO_CHECK_DECK : 0,
	SERVER_NO_SHUFFLE_DECK : 0,
	SERVER_WATCHER : 0,
	SERVER_DECK : 0,
	SERVER_CHAT : 0,
	SERVER_SURRENDER : 0,
	SERVER_RULE_OCG : 0,
	SERVER_RULE_TCG : 0,
	SERVER_RULE_SC : 0,
	SERVER_RULE_CUSTOM : 0,
	SERVER_RULE_NO_EXCLUSIVE : 0,
	SERVER_RULE_ALL : 0,
	SERVER_MODE_SINGLE : 0,
	SERVER_MODE_MATCH : 0,
	SERVER_MODE_TAG : 0,
	SERVER_PLAYER_FIRST : 0,
	SERVER_PLAYER_NEXT : 0,
	SERVER_TO_DUELIST : 0,
	SERVER_TO_WATCHER : 0,
	SERVER_HOME_LFLIST : 0,
	SERVER_HOME_RULE : 0,
	SERVER_HOME_MODE : 0,
	SERVER_HOME_START_LP : 0,
	SERVER_HOME_START_HAND : 0,
	SERVER_HOME_DRAW_COUNT : 0,
	SERVER_HOME_TIME_LIMIT : 0,
	SERVER_HOME_WATCH : 0,
	SERVER_RPS_WIN : 0,
	SERVER_RPS_BYE : 0,
	SERVER_RPS_LOSE : 0,
	SERVER_DECK_ERROR : 0,
	SERVER_PLAYER_ERROR : 0,

	SETTING_CT_DECK_MAIN : 0,
	SETTING_CT_DECK_EX : 0,
	SETTING_CT_DECK_SIDE : 0,
	SETTING_CT_CARD : 0,
	SETTING_CHK_DELETE_YPK : 0,
	SETTING_CHK_DELETE_DECK : 0,
	SETTING_CHK_EXIT_DECK : 0,
	SETTING_CHK_SWAP_BUTTON : 0,
	SETTING_CHK_HIDDEN_NAME : 0,
	SETTING_CHK_HIDDEN_CHAT : 0,
	SETTING_VOICE_BACK_BGM : 0,
	SETTING_DELETE_YPK : 0,
	SETTING_PACKS : 0,
	SETTING_ITEMS : 0,
	SETTING_OTHER : 0,
	SETTING_EX_CARDS : 0,
	SETTING_RELOAD : 0,
	SETTING_RESERT : 0,
	SETTING_GAME_VERSION : 0,
	SETTING_SUPER_PRE_VERSION : 0,
	SETTING_UPDATE : 0,
	SETTING_LATEST : 0,
	SETTING_DOWNLOAD_CUSTOM : 0,
	SETTING_DOWNLOAD_NAME : 0,
	SETTING_DOWNLOAD_START : 0,
	SETTING_DOWNLOAD_COMPELETE : 0,
	SETTING_DOWNLOAD_LEN : 0,
	SETTING_RULE_NAME_UNLAWFUL : 0,

	DUEL_WIN : 0,
	DUEL_LOSE : 0,
	DUEL_CHAIN : 0,
	DUEL_GAME : 0,
	DUEL_CHAT : 0,
	DUEL_HISTORY : 0,
	DUEL_LOCATION_GRAVE : 0,
	DUEL_LOCATION_REMOVED : 0,
	DUEL_LOCATION_DECK : 0,
	DUEL_LOCATION_EX_DECK : 0,
	DUEL_LOCATION_MZONE : 0,
	DUEL_LOCATION_EX_MZONE : 0,
	DUEL_LOCATION_SZONE : 0,
	DUEL_LOCATION_FIELD : 0,
};

Object.entries(I18N_KEYS).forEach((i, v) => {
	I18N_KEYS[i[0] as keyof typeof I18N_KEYS] = v;
});

export { I18N_KEYS };
export type { I18N }